// const promise = new Promise((resolve,reject)=>{
//     // resolve()
//     // reject("rejet status")
//         reject('1111')
//     // throw new Error()
// })


//1. 当executor抛出异常时,也是会调用错误俘获的回到函数的
// promise.then(undefined,(err)=>{
//     console.log("err:",err)
//     console.log("-----------")
// })

//2.通过catch方法来传入错误（拒绝）
//promise/a+规范
// promise.then(res =>{
//     return new Promise((resolve,reject)=>{
//         reject('then rejects status')
//     })
// }).catch(err=>{
//     console.log(err)
// })

// 3.独立调用
// const promise = new Promise((resolve,rejec)=>{
//     rejec("11111")
// })

// promise.then(res=>{
//     console.log (res)
// })


// 4.catch方法的返回值
// promise.then(res =>{
//     console.log("res",res)
// }).catch(err=>{
//     console.log("err",err)
//     return "catch return value"
// }).then(res=>{
//     console.log("res1",res)
//     }).catch(err=>{
//         console.log("err1",err)
// })

const p1 = new Promise((resolve,reject)=>{
    reject(1111)
    // resolve()
})

p1.then(res=>{}).then(res=>{
    throw new Error("then error message")
}).catch(err=>{
    console.log(err)
})